1. Field of the Invention
The invention relates to methods for conservation of bandwidth in a packet network. More specifically, the invention relates to methods for reducing the bandwidth consumption in voice-over packet networks by improved detection of active signals, background noise, and silence.
2. Description of the Background Art
A system for bandwidth savings, known as time assignment speech interpolation (TASI), was introduced to increase the capacity of submarine telephone cables used in analog telephony. TASI was subsequently replaced with a similar digital system. Such schemes are commonly known as digital speech interpolation (DSI) systems. As multimode and variable-rate speech coding techniques have improved, several promising silence compression standards have been developed and issued to address the bandwidth saving problem. The algorithm standardized by the GSM for use in the Pan-European digital Cellular Mobile Telephone Service is an example of a voice activity detection (VAD) technique designed for the mobile environment. Another VAD algorithm in wireless applications is provided with the ITA/EIA/IS-127 Enhanced Variable Rate Codec standard. There are two silence compression standards from ITU: G.723.1 Annex A, and G.729 Annex B.
Although these standards for bandwidth savings are very effective, their complexity is very high. The complexity of these methods derives from the fact that they rely upon processing the spectral features of a signal, which requires an analysis of the frequency and/or spectrum of the signal to identify the characteristics of speech, voice, or other distinct signals. These methods require adaptive algorithms to reduce noise, band pass filters to isolate speech, and the like to identify accurately characteristics of the signal to detect voice from other sounds, signals, or noise.
Complex standards require complex algorithms and therefore require significant processing capabilities. The method of the present invention significantly reduces complexity and therefore can be implemented in high channel density wired telephony applications. The present invention is simple in terms of processing and memory requirements and results in excellent performance.
In voice-over packet applications, speech signal is transmitted using data packets. The general telephone network will limit the bandwidth of the speech signal to 300 to 3,400 Hz range. In most speech codecs, the signal is sampled at 8 Khz resulting in the maximum signal bandwidth of 4 Khz. Each sample is represented with 16 bits, resulting in a 128 kbps bit rate. To save on bandwidth, PCM and ADPCM codecs are widely used in telephony applications and are important in high channel density implementation of voice-over packet applications. For the purpose of bandwidth savings with PCM and ADPCM codecs, voice activity detection is used to distinguish silence from active signal. The silence packets are not transmitted during any nonspeech interval, effectively increasing the number of channels. In voice-over packet applications, the input speech level can be varied from xe2x88x9250dBm0 to 0dBm0, facsimile signal level varies from xe2x88x9248dBm0 to 0dBm0, the noise properties may change considerably during a conversation.
To detect signal activity accurately under different signal input and noise conditions, the energy threshold is adapted to the input signal and noise levels. Because of its adaptive function, the corresponding signal activity detection algorithm herein provides bandwidth savings with low complexity and low delay and performs well for a wide range of signal energy input levels and background noise environments as well as signal energy level changes. Because the bandwidth savings may change based on packet network traffic load, the algorithm is dynamically configurable to adjust the bandwidth savings percentages.
In development of voice-over packet network applications, a reliable bandwidth saving method is crucial to achieve a desirable balance between acceptable perceived sound quality and reduction in bandwidth requirements. Due to a variety of working conditions a number of challenges are imposed upon such a method. The bandwidth savings needs to be accomplished with both low delay and low complexity. The method must perform well for a wide range of input signal levels, must work in a variety of background noise environments, and must be robust in the presence of active signal and/or background noise level changes. Since the bandwidth requirements may change based on network factors such as load or traffic conditions or because of changing performance needs, the present invention is dynamically configurable to perform well under different requirements. It is common for the noise environment to alter in real-time, and the present invention dynamically adjusts through monitoring such changes to accomplish bandwidth savings and to perform well under a wide variety of conditions.
The present invention accomplishes efficient savings in bandwidth through a system for active signal (e.g., voice, facsimile, dialtone) and background noise detection and discrimination which utilizes block energy threshold adaptation, adaptive marginal signal/noise discrimination, state control logic, and active signal smoothing. The system distinguishes active signal (e.g., voice, speech, etc.) from background noise to allow for the compression or elimination of periods of silence or background noise. The system includes a state machine for logic control in establishing a dynamic adaptive threshold, below which the signal is identified as silence or background noise, and above which the signal is identified as active signal. The threshold is established by factors, including an active signal estimation technique from discrimination of noise below a first threshold and active signal above a second threshold. Signal between the thresholds cannot be discriminated and is therefore not used in the estimation to avoid loss of voice through misidentification as noise or silence. The system is efficient in detection of active signals and elimination of noise, while maintaining a safety margin to avoid degradation of voice quality by misidentification of low voice signals as background or silence.
The state machine, FIG. 2, includes the flow logic, FIG. 3, for updating the adaptive block energy threshold used for threshold detection, FIG. 1. There are three states in the state machine: learning state, converged state, and constant envelope state. Learning state is the initial and default state, where the system does not have any reliable estimates of noise or active signal energy levels. The state control logic 6 is in converged state when the current energy level threshold is acceptable and the noise and signal level estimations are reliable. When the input signal has an approximate constant envelope, the state machine is in the constant envelope state to distinguish facsimile from background noise in order to identify facsimile as active signal, not noise.
The system utilizes signal energy detection to establish and adjust the adaptive lower and upper thresholds. The signal is divided into blocks of a desired length, and signal features relating to the signal energy level are extracted for analysis to determine signal feature characteristics used to establish noise and active signal predictive thresholds. These established thresholds are used to discriminate the signal.
A signal from a source is first processed to determine the energy E(n) of the signal. The energy level is processed into energy vectors corresponding to discrete time intervals, for analysis. Each block is first processed by comparison with an initial set of thresholds within a marginal signal and noise discriminator, to discriminate initially between noise and signal. If below a first noise threshold, the block is classified as noise. If above a second voice threshold, the block is classified as active signal. Once discriminated, blocks below the noise threshold are used in noise level estimation, and blocks above the active signal threshold are used in active signal level estimation. Blocks between the thresholds are not used in level estimation. In this manner the present invention creates a clear separation between signal and noise.
These processed signal blocks are then used to create active estimates of the noise level and of the active signal level. The estimation is a continuous processing activity updated as further signal blocks are discriminated and made available to the estimator. In the exemplary embodiment, estimation is performed using a combination RMS/geometric averaging of block energies under the control of the marginal signal and noise discriminator. However, either RMS or geometric averaging alone could be used, as could other power estimation techniques, sample based or block based averaging. The method of both sampling and averaging can be varied through a change of factors such as time constants, frame size for block energy threshold detection, changing noise and/or signal thresholds, elimination of a discrimination gap between noise and signal, estimate noise/voice division, etc., still within the scope of the invention as herein taught.
The estimates of noise level and active signal level are later used in establishing the adaptive thresholds used to process the current signal block in the threshold detector to determine if the signal is noise or voice used in establishing an output decision for use in compression for bandwidth savings.
The determined energy level E(n) of the signal is also supplied to a threshold detector to make the detection between noise and active signals. The current values of the adaptive thresholds within the detector, as established from the active estimates of noise signal and active signal level based upon the control of the state control logic, are used to classify an input block into xe2x80x9cactive signalxe2x80x9d or xe2x80x9cnoisexe2x80x9d comparing the corresponding block energy E (n) with the adaptive threshold. The threshold adaption is performed based upon a current one of several available algorithms selected by a state control logic based upon the dynamics of the signal estimation processing. Different threshold functions are applied to the detection based upon the reliability of these estimates and the consistency of the signal envelope.
Weak active signals, which may present intermittent low signal levels, can be misclassified as noise. In order to reduce misclassification, the output of the threshold detector is smoothed. By smoothing, short term active signal drops are not classified as noise and subsequently improperly compressed. The smoothed output of the threshold detector is used as the output decision of the system method. The smoothing mechanism is influenced by the traffic load configuration. In the exemplary embodiment, a hang-over period smoothing method is implemented. Alternative delay methods or smoothing algorithms can be implemented. However, the computational processing power needed to perform signal smoothing processing must be considered in implementing the present invention, which relies upon simplification for effective implementation.
The output decision is then used by the voice-over packet network communication system to implement the desired processing of the current packet for bandwidth savings by appropriate compression based upon the simplified active signal/noise discrimination of the present invention.
In energy-based signal activity detection, one of the difficulties is that a simple energy measure cannot distinguish low-level speech sounds (weak active signal) from background noise if the signal-to-noise ratio is not high enough. In the implementation of the preferred embodiment of the present invention as described below, the following assumptions have been made. However, these values can be adjusted to process signals according to desired design parameters while remaining within the inventive concept taught herein:
during natural conversation, within a long enough period of time, there will exist at least one silence frame (i.e., a signal frame that does not contain speech sounds) of a minimum duration;
during natural conversation, weak speech sounds should normally last only for short periods of time;
the short-term statistics (up to 1.5 seconds) of a noise are stationary or pseudo-stationary;
the block energy threshold should be a function of noise level, active signal level, and signal-to-noise ratio.